#ifndef UP_DOWN_H
#define UP_DOWN_H
#include <utility>
template <typename F, typename IT1, typename IT2>
//参数为右值引用，且使用forward传递参数，可以保证参数的每个细节不变
void flip(F f, IT1&& t1, IT2&& t2) {
  f(std::forward<IT2>(t2), std::forward<IT1>(t1));
}
#endif  // UP_DOWN_H